Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
reeft_gps_test
/
REEFTintegrationLog
/
saved
:
hub_config_maintain.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php //====================================================================================== // // Function: Maintain HUB_CONFIG // // Programmer: JKJ // Date : 2024-08-26 // // Copyright Reeft A/S (c) - 2024 //====================================================================================== //====================================================================================== // Get input //====================================================================================== if (isset($_REQUEST["HUB_CFGGRP"])) { $HUB_CFGGRP = $_REQUEST["HUB_CFGGRP"]; } else { $HUB_CFGGRP = ''; } //====================================================================================== // Make line uppercase //====================================================================================== //====================================================================================== // General config //====================================================================================== include "config/config.php"; //====================================================================================== // Check if user is logged in? //====================================================================================== include "login_check.php"; //====================================================================================== // Get session variables //====================================================================================== include "include/getsession.php"; // include "include/uuid_create.php"; // include "include/generate_password_md5.php"; //====================================================================================== // Set language //====================================================================================== include "include/set_language.php"; //====================================================================================== // Set defaults //====================================================================================== // $pk_reference = $_SESSION['session_dft_pk_reference']; // $referenceCode = $_SESSION['session_dft_referencecode']; // $referenceName = $_SESSION['session_dft_referencename']; //====================================================================================== ?> <!DOCTYPE html> <html lang="en"> <head> <title><?php echo $datahub_text0001 ?></title> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <meta name="description" content="REEFTvisual - Stoptime"> <meta name="author" content="REEFT A/S"> <link rel="icon" href="images/favicon/favicon.ico"> <!-- Bootstrap / jQuery --> <link href="css/bootstrap4.3.1/css/bootstrap.custom.min.css" rel="stylesheet"> <link href="css/bootstrap4.3.1/css/themes/bootstrap.custom.min.css" rel="stylesheet"> <link href="css/bootstrap4.3.1/css/normalize.css" rel="stylesheet" type="text/css"> <link href="css/sticky-footer.css" rel="stylesheet" type="text/css"> <!-- Custom styles for this template --> <link href="css/custom.css" rel="stylesheet"> <link href="css/style.css" rel="stylesheet"> <script src="css/fontawesome6.5.1/js/all.min.js"></script> <script src="css/fontawesome6.5.1/js/sharp-light.min.js"></script> <script src="css/fontawesome6.5.1/js/sharp-regular.min.js"></script> <script src="css/fontawesome6.5.1/js/sharp-solid.min.js"></script> <script src="css/fontawesome6.5.1/js/sharp-thin.min.js"></script> <link href="css/bootstrap_animation/css/animate4/animate.css" rel="stylesheet" type="text/css"> <!--<link href="javascript/chosen/chosen.css" rel="stylesheet" type="text/css">--> <link href="javascript/jquery-ui/jquery-ui.min.css" rel="stylesheet" type="text/css"/> <script src="javascript/jquery.js"></script> <script src="css/bootstrap4.3.1/js/popper.js"></script> <script src="css/bootstrap4.3.1/js/bootstrap.min.js"></script> <script src="javascript/jquery-ui/jquery-ui.min.js"></script> <script src="javascript/jquery.ui.touch-punch.min.js"></script> <link href="javascript/bgrins-spectrum/spectrum.css" rel="stylesheet" type="text/css"> <script src="javascript/bgrins-spectrum/spectrum.js"></script> <script src="javascript/moment.min.js"></script> <script src="javascript/moment-with-locales.min.js"></script> <script src="javascript/moment-duration-format.min.js"></script> <script src="javascript/number_format/jquery.number.min.js"></script> <script src="javascript/jquery.scrollTo.min.js"></script> <link href="javascript/daatatables/media/css/jquery.dataTables.min.css" rel="stylesheet" type="text/css"> <link href="javascript/daatatables/media/css/fixedHeader.dataTables.min.css" rel="stylesheet" type="text/css"> <link href="javascript/daatatables/Buttons-1.4.2/css/buttons.dataTables.min.css" rel="stylesheet" type="text/css"> <script src="javascript/daatatables/media/js/jquery.dataTables.min.js"></script> <script src="javascript/daatatables/media/js/dataTables.fixedHeader.min.js"></script> <script src="javascript/daatatables/Buttons-1.4.2/js/dataTables.buttons.min.js"></script> <script src="javascript/daatatables/Buttons-1.4.2/js/buttons.flash.min.js"></script> <script src="javascript/daatatables/JSZip-2.5.0/jszip.min.js"></script> <script src="javascript/daatatables/pdfmake-0.1.53/pdfmake.min.js"></script> <script src="javascript/daatatables/pdfmake-0.1.53/vfs_fonts.js"></script> <script src="javascript/daatatables/Buttons-1.4.2/js/buttons.html5.min.js"></script> <script src="javascript/daatatables/Buttons-1.4.2/js/buttons.print.min.js"></script> <script src="javascript/chosen/chosen.jquery.min.js" type="text/javascript"></script> <script src="javascript/viewer-master/dist/viewer.min.js"></script> <link href="javascript/viewer-master/dist/viewer.min.css" rel="stylesheet"> <script src="javascript/ajaxq/ajaxq.js"></script> <link id="scrollUpTheme" rel="stylesheet" href="javascript/scrollup-master/dist/css/themes/image.css"> <script src="javascript/scrollup-master/dist/jquery.scrollUp.js"></script> <script src="javascript/shortcut.js"></script> <script src="javascript/_reeft_js/set_font_awesome_icon_type.js"></script> <script src="javascript/_reeft_js/date_convert.js"></script> <style> .btn-custom-wide { height:60px; width:210px; } .text-truncate-dt { max-width: 450px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .text-align-dt { text-align: center; } .modal-xxl { max-width: 80%; } .modal-xl { max-width: 50%; } .border-3 { border-width:3px !important; } td .hover-img { position:relative; } td .hover-img span { position:absolute; left:-9999px; top:-9999px; z-index:9999; } td:hover .hover-img span { top: 5px; left:0px; } .chosen-container-single { min-width: 100%; } </style> <script language="JavaScript"> //============================================================================= // Globals //============================================================================= var thisCurrentRow; var thisGlobalRowData; var thisGlobalTableData; var GLOBAL_CONFIG_TYPE_BUTTON_TEXT_A = 'Text/Char'; var GLOBAL_CONFIG_TYPE_BUTTON_TEXT_N = 'Number/Value'; var GLOBAL_CONFIG_TYPE_BUTTON_TEXT_L = 'Date (ISO)'; var GLOBAL_CONFIG_TYPE_BUTTON_TEXT_T = 'Time (ISO)'; // Save field var save_HUB_CFGNAM = ''; var save_HUB_CFGGRP = ''; var global_debug = 'N'; // Add allowed Y/N var GLOBAL_ADD_ALLOWED = 'Y'; // Show group buttons var GLOBAL_SHOW_GROUP_BUTTONS = 'Y'; // Delete allowed Y/N var GLOBAL_DELETE_ALLOWED = 'Y'; // sortMode var GLOBAL_SORTMODE = 'DESC'; var jsonDataSave = {}; var DFT_DATE_DISPLAY_FORMAT = '<?php //echo $DFT_DATE_DISPLAY_FORMAT ?>'; var DFT_LANGUAGE = '<?php //echo $DFT_LANGUAGE ?>'; var GLOBAL_TOTALPAGESSTOPVALUE = 10; // Save field //var save_CFGNAM = ''; $(function () { $.scrollUp({ scrollName: 'scrollUp', // Element ID //topDistance: '1800', // Distance from top before showing element (px) //topSpeed: 300, // Speed back to top (ms) scrollDistance: '300', // Distance from top before showing element (px) scrollSpeed: 300, // Speed back to top (ms) animation: 'fade', // Fade, slide, none animationInSpeed: 200, // Animation in speed (ms) animationOutSpeed: 200, // Animation out speed (ms) scrollText: false, //'Scroll to top', // Text for element activeOverlay: false, // Set CSS color to display scrollUp active point, e.g '#00FFFF' }); }); //============================================================================= // Get data //============================================================================= function getData( inputGetData ) { // Reset, show all if ( inputGetData == '*RESET' ) { inputGetData = ''; //Clear search thisGlobalTableData.search( '' ); } //Only initialize datatables once, else just draw it if ( $.fn.dataTable.isDataTable( '#REEFTvisual_data' ) ) { thisGlobalTableData.draw(); // fire in the hole } else { setDataTables(); } } //============================================================================= // Set datatables //============================================================================= function setDataTables() { // Delete allowed? if ( GLOBAL_DELETE_ALLOWED == 'Y' ) { var show_the_delete_button = true; } else { var show_the_delete_button = false; } // Get the current date line input_HUB_CFGGRP = $('#input-HUB_CFGGRP').val(); $('#REEFTvisual_data').DataTable({ "ajax": { "url": 'hub_config_maintain_get.php', "type": "POST", "data": function (parmData) { // Add custom parameters to the ajax call // Webservice name parmData.HUB_CFGGRP = input_HUB_CFGGRP; }, dataSrc: function (jsonData) { //return data var rpyCMPNO = jsonData.header.rpyCMPNO; var rpyCMPNO_Name = jsonData.header.rpyCMPNO_Name; var rpyFile_name = jsonData.header.rpyFile_name var rpyFile_description = jsonData.header.rpyFile_description var rpyTableRecordsFound= jsonData.header.rpyTableRecordsFound var returnCode = jsonData.header.returnCode; var returnMsg = jsonData.header.returnMsg; var entries_found = jsonData.header.entries_found; var response_sec = jsonData.header.response_sec; // Show load time $('#text-total-records-found').html( rpyTableRecordsFound ); $('#load-time-from-database').html('entries found: ' + entries_found + ' (' + response_sec + ')'); // Set Company and file information if ( rpyFile_name != '' ) { $('#data-hub-company-information').html( '<span title="' + rpyFile_name + ' - ' + rpyFile_description + '">' + rpyCMPNO_Name + ' (' + rpyCMPNO + ')' + '</span>' ).css('font-size','1.3em'); } // Init button line fields var HTMLlineButtons = ''; var HTMLlineButtonsModal = ''; var selectedButtonClass = 'btn-dark'; // Get name of search item input_HUB_CFGGRP = $('#input-HUB_CFGGRP').val(); // // Just in case // if (input_HUB_CFGNAM == '' ) { // input_HUB_CFGNAM = '<?php echo $HUB_CFGGRP ?>'; // } //===================================================================================== // Create group buttons, only if wanted //===================================================================================== if ( GLOBAL_SHOW_GROUP_BUTTONS == 'Y' ) { $.each( jsonData.header_buttons, function( index, object ){ var buttonLine = object.buttonLine; var buttonCount = object.buttonCount; if ( input_HUB_CFGGRP == buttonLine ) { selectedButtonClass = 'btn-success'; } else { selectedButtonClass = 'btn-dark'; } var selectButtonLineID = 'select-button-line-id-' + buttonLine; var selectButtonLineIDmodal = 'select-button-line-id-modal-' + buttonLine + '_' + buttonCount; HTMLlineButtons += '<button type="button" onclick="setWebserviceSearch(\'' + buttonLine + '\')" style="cursor:default" id="' + selectButtonLineID + '" class="btn ' + selectedButtonClass + ' select-button-line btn-sm mr-1 mb-1">' + buttonLine + ' (<b>' + buttonCount + '</b>)' + '</button>' HTMLlineButtonsModal += '<button type="button" onclick="selectGroupValueModal(\'' + buttonLine + '\')" style="width:100px" id="' + selectButtonLineIDmodal + '" class="select-button-line-modal btn btn-primary btn-sm mr-1 mb-1">' + buttonLine + '</button>' }); // Reset HTMLlineButtons += '<button type="button" onclick="setWebserviceSearch(\'' + '' + '\')" style="cursor:default" id="' + 'RESET' + '" class="btn ' + 'btn-warning' + ' select-button-line btn-sm mr-1 mb-1">' + '<b>' + 'RESET' + '</b>' + '</button>' $('#data-result-button-group').html(HTMLlineButtons); $('#data-result-button-group-modal').html(HTMLlineButtonsModal); } //===================================================================================== return jsonData.data; } }, "processing": true, "serverSide": true, "responsive": true, "fixedHeader": true, "lengthMenu": [[10, 25, 50, 100, 250], [10, 25, 50, 100, 250]], "iDisplayLength": 25, "dom": 'lfip<bottom>Bp<"clear">', "order": [[ 0, "asc" ]], "columns": [ { data: "HUB_CFGNAM" }, // 0 { data: "HUB_CFGGRP" }, // 1 { data: "HUB_CFGDSC" }, // 2 { data: "HUB_CFGVAL" }, // 3 { // Since we are combining multiple data fields, use null as the data source data: null, //data: "HUB_CFGTYP", render: function (data, type, row, meta) { HUB_CFGTYP = $('#modal-input-HUB_CFGTYP').val() if ( HUB_CFGTYP != '' ) { row.HUB_CFGTYP = HUB_CFGTYP; } var HUB_CFGTYPtext = setConfigType( row.HUB_CFGTYP ); if ( HUB_CFGTYPtext == '' ) { var HUB_CFGTYPtext = row.HUB_CFGTYP; } return HUB_CFGTYPtext; } }, { // Since we are combining multiple data fields, use null as the data source data: null, //data: "HUB_ACTIVE", render: function (data, type, row, meta) { HUB_ACTIVE = $('#modal-input-HUB_ACTIVE').val() if ( HUB_ACTIVE != '' ) { row.HUB_ACTIVE = HUB_ACTIVE; } if ( row.HUB_ACTIVE == '1') { var HUB_ACTIVEtext = '<div class="text-center text-success"><?php echo $datahub_YES ?></div>'; } else { var HUB_ACTIVEtext = '<div class="text-center text-danger font-weight-bold"><?php echo $datahub_NO ?></div>'; } return HUB_ACTIVEtext; } }, { // Since we are combining multiple data fields, use null as the data source data: null, render: function (data, type, row, meta) { // Create edit button var myButton = '<button id="edt-' + row.HUB_CFGNAM + '-' + row.HUB_CFGGRP + '" class="edit-btn btn btn-primary btn-block mr-1"><?php echo $datahub_button_show_details ?></button>'; return myButton; } }, { // Since we are combining multiple data fields, use null as the data source data: null, // data: "HUB_CFGGRP", render: function (data, type, row, meta) { // Create delete button var myButton = '<button id="dlt-' + row.HUB_CFGNAM + '-' + row.HUB_CFGGRP + '" class="delete-btn btn btn-danger btn-block mr-1"><?php echo $datahub_button_delete ?></button>'; return myButton; } }, { data: "HUB_CFGDAT" }, // 8 { data: "HUB_CFGTIM" }, // 9 { data: "HUB_ACTIVE" }, // 10 { data: "HUB_CFGTYP" } // 11 ], "columnDefs": [ { "targets": [ 3,4,5,6 ], "visible": true, "searchable": false, "orderable": false }, { "targets": [ 7 ], "visible": show_the_delete_button, "searchable": false, "orderable": false }, { "targets": [ 2,3 ], "className": "text-truncate-dt" //class to mimic text-truncate in dt }, { "targets": [ 8,9,10,11 ], "visible": false, "searchable": false, "orderable": false }, { "targets": [ 4 ], "width": '100px', "className": "text-align-dt" }, ], "language": { "processing": "<i class=\"fa fa-spinner fa-spin fa-3x fa-fw\"></i><span class=\"sr-only\"><?php echo $datahub_datatable_Processing ?></span>", "sProcessing": "<?php echo $datahub_datatable_Processing ?>", "sLengthMenu": "<?php echo $datahub_datatable_LengthMenu ?>", "sZeroRecords": "<?php echo $datahub_datatable_ZeroRecords ?>", "sInfo": "<?php echo $datahub_datatable_Info ?>", "sInfoEmpty": "<?php echo $datahub_datatable_InfoEmpty ?>", "sInfoFiltered": "<?php echo $datahub_datatable_InfoFiltered ?>", "sInfoPostFix": "<?php echo $datahub_datatable_InfoPostFix ?>", "sLoadingRecords": "<?php echo $datahub_datatable_Processing ?>", "sSearch": "<?php echo $datahub_datatable_Search ?>", "sUrl": "<?php echo $datahub_datatable_Url ?>", "oPaginate": { "sFirst": "<?php echo $datahub_datatable_First ?>", "sPrevious": "<?php echo $datahub_datatable_Previous ?>", "sNext": "<?php echo $datahub_datatable_Next ?>", "sLast": "<?php echo $datahub_datatable_Last ?>" } }, "rowCallback": function(row, data, index) { }, "preDrawCallback": function(settings) { }, "initComplete": function () { }, "buttons": [ { extend: 'pdf', text: '<img src="images/pdf_logo.png" height="25"> PDF', orientation: 'landscape', title: 'DATAHUB - Config Data Export - Copy - PDF', exportOptions: { // Fields to export (https://datatables.net/reference/button/csv#Examples) columns: [0,1,2,3,4,5], modifier: { page: 'all' } } }, { extend: 'excel', text: '<img src="images/microsoft_excel_logo.png" height="25"> Excel', title: function(){ var p_id = $('#input-HUB_CFGGRP').val(); return 'DATAHUB transactions file export - ' + p_id; }, filename: function(){ var p_id = $('#input-HUB_CFGGRP').val(); return 'DATAHUB - Config Data Export - Copy - ' + p_id; }, exportOptions: { // Fields to export (https://datatables.net/reference/button/csv#Examples) columns: [0,1,2,3,4,5] } }, { extend: 'copy', text: '<img src="images/copy.png" height="25"> Copy to Clipboard', title: 'DATAHUB - Config Data Export - Copy', exportOptions: { // Fields to export (https://datatables.net/reference/button/csv#Examples) columns: [0,1,2,3,4,5] } } ] }); //============================================================================= // Setup the data to be able to update the table without reloading from the server //============================================================================= // Save the table in a global variable thisGlobalTableData = $('#REEFTvisual_data').DataTable(); // Handle click on "Edit" button $('#REEFTvisual_data tbody').on('click', '.edit-btn', function() { thisCurrentRow = $(this).closest('tr'); thisGlobalRowData = thisGlobalTableData.row(thisCurrentRow).data(); // Debug // console.log("edit"); // console.log(thisGlobalRowData); //console.log(thisCurrentRow); dataChange(); }); // Handle click on "Delete" button $('#REEFTvisual_data tbody').on('click', '.delete-btn', function() { thisCurrentRow = $(this).closest('tr'); thisGlobalRowData = thisGlobalTableData.row(thisCurrentRow).data(); // Debug // console.log(thisGlobalRowData); // console.log(thisCurrentRow); dataDeleteConfirm(); }); //============================================================================= } //============================================================================= // Reason addd -- not used //============================================================================= function dataAdd ( input_pk_type ) { var myHUB_CFGNAM = $('#input-HUB_CFGGRP').val(); resetModalInputFields(); setModalInputDefaultFields(); $('#input-mode').val('*add'); // Reset save field save_HUB_CFGNAM = ''; save_HUB_CFGGRP = ''; // Create config type buttons createConfigTypeButtons(); // Click default selectConfigType('A'); // Set HUB_ACTIVEe - default YES $('#button-deleted-yes').removeClass('btn-primary').addClass('btn-success'); $('#button-deleted-no').removeClass('btn-success').addClass('btn-primary'); // Reset modal message resetModalMessage(); // Remove key fields readonly $('#modal-input-HUB_CFGNAM').removeAttr('readonly','readonly'); $('#data-result-button-group-modal').removeClass('d-none'); // Show modal $('#hub_config_maintainModal').modal('show'); $('#hub_config_maintainModal').on('shown.bs.modal', function () { $('#modal-input-HUB_CFGNAM').trigger('focus'); }) } //============================================================================= // Show details //============================================================================= function dataChange( ) { var row = thisGlobalRowData; // Save in fields var HUB_ACTIVE = row["HUB_ACTIVE"]; var HUB_CFGDSC = row["HUB_CFGDSC"]; var HUB_CFGNAM = row["HUB_CFGNAM"]; var HUB_CFGGRP = row["HUB_CFGGRP"]; var HUB_CFGTYP = row["HUB_CFGTYP"]; var HUB_CFGVAL = row["HUB_CFGVAL"]; var HUB_CFGDAT = row["HUB_CFGDAT"]; var HUB_CFGTIM = row["HUB_CFGTIM"]; var counter = row["counter"]; $('#input-mode').val('*update'); save_HUB_CFGNAM = HUB_CFGNAM; // Move to input fields $('#modal-input-counter').val(counter); $('#modal-input-HUB_CFGNAM').val( HUB_CFGNAM ); $('#modal-input-HUB_CFGGRP').val( HUB_CFGGRP ); $('#modal-input-HUB_CFGDSC').val( HUB_CFGDSC ); $('#modal-input-HUB_CFGTYP').val( HUB_CFGTYP ); $('#modal-input-HUB_CFGVAL').val( HUB_CFGVAL ); $('#modal-input-HUB_CFGDAT').val( HUB_CFGDAT ); $('#modal-input-HUB_CFGTIM').val( HUB_CFGTIM ); $('#modal-input-HUB_ACTIVE').val( HUB_ACTIVE ); // Create config type buttons createConfigTypeButtons(); // Click default selectConfigType(HUB_CFGTYP); // Check HUB_ACTIVEe code if ( HUB_ACTIVE != '1' && HUB_ACTIVE != '0' ) { HUB_ACTIVE = '1'; } $('#modal-input-HUB_ACTIVE').val( HUB_ACTIVE ); // Set HUB_ACTIVEe - default YES if ( HUB_ACTIVE == '1' ) { $('#button-deleted-yes').removeClass('btn-primary').addClass('btn-success'); $('#button-deleted-no').removeClass('btn-success').addClass('btn-primary'); } else { $('#button-deleted-no').removeClass('btn-primary').addClass('btn-success'); $('#button-deleted-yes').removeClass('btn-success').addClass('btn-primary'); } // Make key fields readonly $('#modal-input-HUB_CFGNAM').attr('readonly','readonly'); $('#data-result-button-group-modal').removeClass('d-none'); $('.read-only-class').attr('readonly','readonly'); // Reset modal message resetModalMessage(); // Show modal $('#hub_config_maintainModal').modal('show'); $('#hub_config_maintainModal').on('shown.bs.modal', function () { $('#modal-input-HUB_CFGVAL').trigger('focus'); }) } //============================================================================= // Save //============================================================================= function dataSave() { // Reset modal message resetModalMessage(); // Check content of fields if ( $('#modal-input-HUB_CFGNAM').val() == '' ) { $('#modal-message').addClass('border-bottom').html( '<?php echo $datahub_error0082 ?>' ); $('#modal-save-button').addClass('disabled').prop("disabled", true); $('#modal-input-HUB_CFGNAM').trigger('focus'); return false; } if ( $('#modal-input-HUB_CFGVAL').val() == '' ) { $('#modal-message').addClass('border-bottom').html( '<?php echo $datahub_error0085 ?>' ); $('#modal-save-button').addClass('disabled').prop("disabled", true); $('#modal-input-HUB_CFGVAL').trigger('focus'); return false; } if ( $('#modal-input-HUB_CFGDSC').val() == '' ) { $('#modal-message').addClass('border-bottom').html( '<?php echo $datahub_error0084 ?>' ); $('#modal-save-button').addClass('disabled').prop("disabled", true); $('#modal-input-HUB_CFGDSC').trigger('focus'); return false; } if ( $('#modal-input-HUB_CFGGRP').val() == '' ) { $('#modal-message').addClass('border-bottom').html( '<?php echo $datahub_error0086 ?>' ); $('#modal-save-button').addClass('disabled').prop("disabled", true); $('#modal-input-HUB_CFGGRP').trigger('focus'); return false; } if ( $('#modal-input-HUB_CFGTYP').val() == '' ) { $('#modal-message').addClass('border-bottom').html( '<?php echo $datahub_error0083 ?>' ); $('#modal-save-button').addClass('disabled').prop("disabled", true); $('#modal-input-HUB_CFGTYP').trigger('focus'); return false; } var mode = $('#input-mode').val(); //=============================================================================== // Remove # if any //=============================================================================== // Setup remove string let mySaveString; // var myWorkField = $('#modal-input-DESCP1').val(); // myWorkField = myWorkField.replace("#", ""); // $('#modal-input-DESCP1').val( myWorkField ); // var myWorkField = $('#modal-input-DESCP2').val(); // myWorkField = myWorkField.replace("#", ""); // $('#modal-input-DESCP2').val( myWorkField ); //=============================================================================== // Make sure key does not have space and are in uppercase // var myWorkField = $('#modal-input-HUB_CFGNAM').val(); // myWorkField = myWorkField.replace(" ", "_"); // myWorkField = myWorkField.toUpperCase(); // $('#modal-input-HUB_CFGNAM').val( myWorkField ); // Make array and json var myData = $('#dataForm').find('input, select, textarea').serializeArray(); var result = JSON.stringify(myData); var result = encodeURIComponent( result ); // console.log(result); // console.log(myData); // return; var parmData = 'data=' + result + '&mode=' + mode ; $.ajax({ url: "hub_config_maintain_save.php", type: "POST", data: parmData, dataType: "json", cache: false, }) .done(function( jsonData ) { //================================================================= // START - Update the table without doing a server reload // Only update //================================================================= if ( mode == '*update' ) { event.preventDefault(); // var myHUB_ACTIVE = $('#modal-input-HUB_ACTIVE').val(); // console.log('myHUB_ACTIVE 1: ' + myHUB_ACTIVE) // if ( myHUB_ACTIVE == '1') { // myHUB_ACTIVEtext = '<div class="text-center">Yes</div>'; // myHUB_ACTIVEtext = 'YES'; // } else { // myHUB_ACTIVEtext = '<div class="text-center">No</div>'; // myHUB_ACTIVEtext = 'NO'; // } // Debug // console.log(myGlobalRowData[0]); // console.log(myGlobalRowData[1]); // console.log(myGlobalRowData[2]); // console.log(myCurrentRow); // console.table(myGlobalTableData); // Get the data for the "Change/Delete button", so we do not need to create it again // myChangeButtonData = myGlobalRowData[6]; // myDeleteButtonData = myGlobalRowData[7]; //============================================== // Use this if you want to update the whole row //============================================== // myGlobalTableData.row(myCurrentRow).data([ // modal_input_HUB_CFGNAM, // modal_input_LSTCAL, // modal_input_DESCP1, // modal_input_DESCP2, // modal_input_COUNT, // modal_input_SERTYP, // myChangeButtonData, // myDeleteButtonData, // modal_input_DESCP1, // modal_input_DESCP2 // ]) // .draw(false) // ; //======================================================= // Use this if you want to update one or more table cells //======================================================= thisGlobalTableData.cell(thisCurrentRow, 0 ).data($('#modal-input-HUB_CFGNAM').val() ); thisGlobalTableData.cell(thisCurrentRow, 1 ).data($('#modal-input-HUB_CFGGRP').val() ); thisGlobalTableData.cell(thisCurrentRow, 2 ).data($('#modal-input-HUB_CFGDSC').val() ); thisGlobalTableData.cell(thisCurrentRow, 3 ).data($('#modal-input-HUB_CFGVAL').val() ); thisGlobalTableData.cell(thisCurrentRow, 4 ).data($('#modal-input-HUB_CFGTYP').val() ); thisGlobalTableData.cell(thisCurrentRow, 5 ).data($('#modal-input-HUB_ACTIVE').val() ); // 6 = Edit button // 7 = Delete button thisGlobalTableData.cell(thisCurrentRow, 8 ).data($('#modal-input-HUB_CFGDAT').val() ); thisGlobalTableData.cell(thisCurrentRow, 9 ).data($('#modal-input-HUB_CFGTIM').val() ); thisGlobalTableData.cell(thisCurrentRow, 10 ).data($('#modal-input-HUB_ACTIVE').val() ); //.draw(false); } //================================================================= // END - Update the table without doing a server reload //================================================================= //================================================================= // Close the modal //================================================================= $('#hub_config_maintainModal').modal('hide'); //================================================================= // Only when add //================================================================= if ( mode == '*add' ) { var myButtonID = 'select-button-line-id-' + $('#input-HUB_CFGGRP').val(); $('#' + myButtonID).click(); getData(''); } }) .always(function( jsonData ) { // Reset mode $('#input-mode').val(''); // Reset input fields resetModalInputFields(); }) .fail(function( xhr, ajaxOptions, thrownError ) { console.log('I am failed..'); console.log( thrownError ); console.log( xhr ); }); } //============================================================================= // Delete confirm //============================================================================= function dataDeleteConfirm( ) { $('#input-mode').val('*delete'); var row = thisGlobalRowData; var input_HUB_CFGNAM = row["HUB_CFGNAM"]; $('#confirm-delete-HUB_CFGNAM').val(input_HUB_CFGNAM); // Create confirm text $('#confirm-delete-text-HUB_CFGNAM').html(input_HUB_CFGNAM); $('#hub_config_confirmDeleteModal').modal('show'); } //============================================================================= // Delete //============================================================================= function dataDeleteExec() { // Reset modal message resetModalMessage(); var mode = $('#input-mode').val(); // Make array and json var myData = $('#dataForm-delete').find('input, select').serializeArray(); var result = JSON.stringify(myData); // console.log(result); // console.log(myData); //return; var parmData = 'data=' + result + '&mode=' + mode ; $.ajax({ url: "hub_config_maintain_save.php", type: "POST", data: parmData, dataType: "json", cache: false, }) .done(function( jsonData ) { $('#hub_config_confirmDeleteModal').modal('hide'); //================================================================= // Only when add //================================================================= if ( mode == '*delete' ) { var myButtonID = 'select-button-line-id-' + $('#input-HUB_CFGGRP').val(); $('#' + myButtonID).click(); resetModalInputFields(); getData(''); } }) .always(function( jsonData ) { }) .fail(function( xhr, ajaxOptions, thrownError ) { console.log('I am failed..'); console.log( xhr ); }); } //============================================================================= // Check if userid exists //============================================================================= function checkDataExists() { var HUB_CFGNAM = $('#modal-input-HUB_CFGNAM').val(); // If update, then the "orginal" code is ok if ( $('#input-mode').val() == '*update' ) { if ( HUB_CFGNAM == save_HUB_CFGNAM ) { // return; } } var parmData = 'hub_cfgnam=' + HUB_CFGNAM ; $.ajax({ url: "hub_conchk_get.php", type: "GET", data: parmData, dataType: "json", cache: false, }) .done(function( jsonData ) { var returnCode = jsonData.header.returnCode; var returnMsg = jsonData.header.returnMsg; var entries_found = jsonData.header.entries_found; var returnConfigValue = jsonData.header.returnConfigValue; var returnConfigValueText = jsonData.header.returnConfigValueText; if ( returnConfigValue == '50') { $('#modal-message').addClass(' border-bottom').html( '<?php echo $datahub_error0087 ?>' ); $('#modal-save-button').addClass('disabled').prop("disabled", true); $('#modal-input-HUB_CFGNAM').trigger('focus'); return false; } else { // DESCP = jsonData.detail[0].DESCP // $('#modal-input-HUB_CFGTYP').val( DESCP ); } // Reset modal message resetModalMessage(); }) .always(function( jsonData ) { }) .fail(function( xhr, ajaxOptions, thrownError ) { console.log('I am failed..'); console.log( xhr ); }); } //============================================================================= // Show deleted //============================================================================= function showDeleted() { var show_deleted = $('#input-show-deleted').val(); if ( show_deleted == 'Y' ) { $('#button-show-deleted').html('<?php echo $datahub_NO ?>'); $('#input-show-deleted').val('N'); } else { $('#button-show-deleted').html('<?php echo $datahub_YES ?>'); $('#input-show-deleted').val('Y'); } } //============================================================================= // Set HUB_ACTIVEe Button (Yes/No) //============================================================================= function setHUB_ACTIVEButton( HUB_ACTIVEmode ) { if ( HUB_ACTIVEmode == '1' ) { $('#button-deleted-yes').removeClass('btn-primary').addClass('btn-success'); $('#button-deleted-no').removeClass('btn-success').addClass('btn-primary'); } else { $('#button-deleted-yes').removeClass('btn-success').addClass('btn-primary'); $('#button-deleted-no').removeClass('btn-primary').addClass('btn-success'); } $('#modal-input-HUB_ACTIVE').val(HUB_ACTIVEmode ); } //============================================================================= // Set default modal input fields //============================================================================= function setModalInputDefaultFields() { var myHUB_CFGNAM = $('#input-HUB_CFGGRP').val(); $('#modal-input-HUB_ACTIVE').val('1'); $('#modal-input-HUB_CFGDAT').val( $('#input-current-date').val() ); $('#modal-input-HUB_CFGTIM').val( $('#input-current-time').val() ); } //============================================================================= // Reset modal input fields //============================================================================= function resetModalInputFields() { $('#modal-input-HUB_ACTIVE').val(''); $('#modal-input-HUB_CFGDSC').val(''); $('#modal-input-HUB_CFGNAM').val(''); $('#modal-input-HUB_CFGGRP').val(''); $('#modal-input-HUB_CFGTYP').val(''); $('#modal-input-HUB_CFGVAL').val(''); $('#modal-input-HUB_CFGDAT').val(''); $('#modal-input-HUB_CFGDAT').val(''); $('#modal-input-HUB_CFGTIM').val(''); $('#input-mode').val(''); } //============================================================================= // Log off //============================================================================= function signoff() { window.location.href = "logout.php"; } //============================================================================= // Load page //============================================================================= function loadPage(url, p1, p2, p3) { window.location.href = url; } //============================================================================= // Reset modal message //============================================================================= function resetModalMessage() { // Reset //$('#modal-message').removeClass('p-2 font-weight-bold border border-danger rounded bg-light').html( ' ' ); $('#modal-message').removeClass('border-bottom').html( ' ' ); $('#modal-save-button').removeClass('disabled').prop("disabled", false); } //============================================================================= // Clean input string //============================================================================= function cleanInputString( myWorkField ) { let charactersToRemove = '?#"\''; let myPattern = new RegExp('[' + charactersToRemove + ']', 'g'); myWorkField = myWorkField.replace(myPattern,''); return myWorkField; } //============================================================================= // Full screen popup //============================================================================= function popUpFull( url, p1, p2, p3 ) { var winname = 'win_' + url; params = 'width='+screen.width; params += ', height='+screen.height; params += ', top=0, left=0' params += ', fullscreen=yes'; params += ',scrollbars=1'; overview_win = window.open(url,winname, params); if (window.focus) {overview_win.trigger('focus')} return false; } //============================================================================= // screen popup - center //============================================================================= function popUpCenter(url, p1, p2, p3) { var v1_w = screen.availWidth; var v1_h = screen.availHeight; if ( parseInt(v1_w) > 1800 ) { v1_w = 1800; v1_h = v1_h - 200; v1_center = v1_w/0.8; } // Center popup as good as possible var left = (screen.width - v1_w) / 2; var top = (screen.height - v1_h) / 4; var winname = 'win_' + url; params = 'width='+v1_w; params += ', height='+v1_h; params += ', top=' + top + ', left=' + left; params += ', fullscreen=yes'; params += ',scrollbars=1'; overview_win = window.open(url,winname, params); if (window.focus) {overview_win.trigger('focus')} return false; } //============================================================================= // screen popup - center - bigger //============================================================================= function popUpCenterBig(url, p1, p2, p3) { var v1_w = screen.availWidth; var v1_h = screen.availHeight; // Get 25% v1_w_pct = v1_w * 0.25; v1_w_new = v1_w - v1_w_pct; if ( v1_w_new < 1 ) { v1_w_new = 1800; } v1_w = v1_w_new; v1_h = v1_h - 200; v1_center = v1_w/0.8; // Center popup as good as possible var left = (screen.width - v1_w) / 2; var top = (screen.height - v1_h) / 4; var winname = 'win_' + url; params = 'width='+v1_w; params += ', height='+v1_h; params += ', top=' + top + ', left=' + left; params += ', fullscreen=yes'; params += ',scrollbars=1'; overview_win = window.open(url,winname, params); if (window.focus) {overview_win.trigger('focus')} return false; } //============================================================================= // Popup top //============================================================================= function popUpTop(url, p1, p2, p3) { var winname = 'win_' + url; w = 650; h = 750; params = 'width='+w; params += ', height='+h; params += ', top=0, left=0' params += ', fullscreen=no'; params += ',scrollbars=1'; overview_win = window.open(url,winname, params); if (window.focus) {overview_win.trigger('focus')} return false; } //============================================================================= // Clean input string //============================================================================= function cleanInputString( myWorkField ) { let charactersToRemove = '?#"\''; let myPattern = new RegExp('[' + charactersToRemove + ']', 'g'); myWorkField = myWorkField.replace(myPattern,''); return myWorkField; } //============================================================================= // Set config type //============================================================================= function setConfigType( inputType ) { outputType = inputType; if ( inputType == 'A' ) { var outputType = GLOBAL_CONFIG_TYPE_BUTTON_TEXT_A; } if ( inputType == 'N' ) { var outputType = GLOBAL_CONFIG_TYPE_BUTTON_TEXT_N; } if ( inputType == 'L' ) { var outputType = GLOBAL_CONFIG_TYPE_BUTTON_TEXT_L; } if ( inputType == 'T' ) { var outputType = GLOBAL_CONFIG_TYPE_BUTTON_TEXT_T; } return outputType; } //============================================================================= // Create config type buttons //============================================================================= function createConfigTypeButtons() { $('#button-group-config-type').html(''); // Char myConfigType_A = '<button type="button" id="button-config_type-button-A" class="btn btn-primary btn-config-type mr-1 mb-1" onclick="selectConfigType(\'A\')">' + GLOBAL_CONFIG_TYPE_BUTTON_TEXT_A +'</button>'; myConfigType_N = '<button type="button" id="button-config_type-button-N" class="btn btn-primary btn-config-type mr-1 mb-1" onclick="selectConfigType(\'N\')">' + GLOBAL_CONFIG_TYPE_BUTTON_TEXT_N +'</button>'; myConfigType_L = '<button type="button" id="button-config_type-button-L" class="btn btn-primary btn-config-type mr-1 mb-1" onclick="selectConfigType(\'L\')">' + GLOBAL_CONFIG_TYPE_BUTTON_TEXT_L +'</button>'; myConfigType_T = '<button type="button" id="button-config_type-button-T" class="btn btn-primary btn-config-type mr-1 mb-1" onclick="selectConfigType(\'T\')">' + GLOBAL_CONFIG_TYPE_BUTTON_TEXT_T +'</button>'; $('#button-group-config-type').html( myConfigType_A + myConfigType_N + myConfigType_L + myConfigType_T ); } //============================================================================= // Select config type //============================================================================= function selectConfigType( inputType ) { $('#modal-input-HUB_CFGTYP').val( inputType ); // Remove all "active" marks $('.btn-config-type').removeClass('active btn-success').addClass('btn-primary');; // Mark button as selected myID = 'button-config_type-button-' + inputType; $('#' + myID ).addClass('active btn-success').removeClass('btn-primary'); } //============================================================================= // Select line modal //============================================================================= function selectGroupValueModal( inputLine ) { $('#modal-input-HUB_CFGGRP').val( inputLine ); var selectButtonLineID = 'select-button-line-id-modal-' + inputLine; $('.select-button-line-modal').removeClass('btn-success').addClass('btn-primary'); $('#' + selectButtonLineID).removeClass('btn-primary').addClass('btn-success'); // Place cursor $('#modal-input-HUB_CFGNAM').trigger('focus'); resetModalMessage(); } //============================================================================= // Reset line modal //============================================================================= function resetLineModal() { resetModalMessage() let inputLine = $('#modal-input-HUB_CFGNAM').val(); if ( inputLine == '' ) { $('.select-button-line-modal').removeClass('btn-success').addClass('btn-primary'); } } //============================================================================= // Set action type //============================================================================= function setActionType( inputType ) { outputType = ''; if ( inputType == '*PDF' ) { outputType = '1'; } if ( inputType == '*PIC' ) { outputType = '2'; } if ( inputType == '*SCAN' ) { outputType = '3'; } if ( inputType == '*MOVIE' ) { outputType = '4'; } if ( inputType == '*LINK' ) { outputType = '5'; } if ( inputType == '*CHECK' ) { outputType = '6'; } return outputType; } //============================================================================= // Open previewer //============================================================================= function preViewElement( myElement ) { let h = $(window).height(); let w = $(window).width(); console.log('h: ' + h + ' -- ' + 'w: ' + w); h = h * 0.75; console.log('h: ' + h + ' -- ' + 'w: ' + w); // Create ID let myID = '#' + myElement; let myURL = $( myID ).val(); let myIFRAME = '<iframe style="height:' + h + 'px;width:100%;" src=' + myURL +'></iframe>'; // Set iframe $('#modal-preview-iframe').html( myIFRAME ); // Show modal $('#hub_config_previewModal').modal('show'); } //============================================================================= // Get data - search //============================================================================= function setWebserviceSearch( input_HUB_CFGGRP ) { // Save curreent webservice name $('#input-HUB_CFGGRP').val( input_HUB_CFGGRP ); var selectButtonLineID = 'select-button-line-id-' + input_HUB_CFGGRP; // Set clicked button $('.select-button-line').removeClass('btn-success').addClass('btn-dark'); $('#' + selectButtonLineID).removeClass('btn-dark').addClass('btn-success'); // Search - destory table and start over again $('#REEFTvisual_data').DataTable().clear().destroy(); setDataTables(); } //============================================================================= // Close modal //============================================================================= function closeModal() { $('#hub_config_maintainModal').modal('hide'); } //============================================================================= // Set clock //============================================================================= function updateClock() { var currentTime = moment().format('YYYY-MM-DD HH:mm:ss'); currentTime = REEFT_format_date( currentTime, DFT_DATE_DISPLAY_FORMAT ) $('#input-current-date').val( moment().format('YYYY-MM-DD') ); $('#input-current-time').val( moment().format('HH:mm:ss') ); $('#current-time').html( currentTime ); // If add mode update date/time in modal window if ( $('#input-mode').val() == '*add' ) { $('#modal-input-HUB_CFGDAT').val( $('#input-current-date').val() ); $('#modal-input-HUB_CFGTIM').val( $('#input-current-time').val() ); } } //============================================================================= // jQuery - Ready //============================================================================= $(document).ready(function() { // When closing modal $('#hub_config_maintainModal').on('hidden.bs.modal', function (e) { resetModalInputFields(); }) // Do not show deleted $('#input-show-deleted').val('Y'); $('#input-HUB_CFGGRP').val('<?php echo $HUB_CFGGRP ?>'); // Get data done by datatables setDataTables(); $('#delay-marker-id').html('<i id="delay-marker-icon-id" class="text-success fa-solid fa-circle"></i>'); //----------------------------------------------------------------------- // Start the clock //----------------------------------------------------------------------- updateClock(); setInterval(function() { updateClock(); }, 1000); //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Set font awesome icon type //----------------------------------------------------------------------- // Value is from config/config.php var iconType = '<?php echo $DFT_SET_FONT_AWESOME_ICON_TYPE ?>'; setFontAwesomeIconType( iconType ); //----------------------------------------------------------------------- //----------------------------------------------------------------------- // Delay keyup checker //----------------------------------------------------------------------- var delay = (function () { var timer = 0; return function (callback, ms) { clearTimeout(timer); timer = setTimeout(callback, ms); }; })() // DataTable search delay $('#REEFTvisual_data_wrapper .dataTables_filter input') .unbind() // overrule normal behavior .bind('keyup', function(e){ $('#delay-marker-icon-id').removeClass('text-success').addClass('text-danger'); console.log('.......') var inputValue = $('.dataTables_filter input').val(); var currSearchValue = $('#input-search-line').val(); if (inputValue != currSearchValue) { $('#input-search-line').val( inputValue ); //If enter or delete we update immediately, consider to add backspace=8 and delete=46 also const keyList = [13]; if (keyList.includes(e.keyCode)) { // console.log('immediately ' + inputValue ); $('#delay-marker-icon-id').removeClass('text-danger').addClass('text-success'); thisGlobalTableData.search(inputValue).draw(); // fire in the hole } else { delay(function () { // console.log('this will hit, once user has not typed for 1 second ' + inputValue ); $('#delay-marker-icon-id').removeClass('text-danger').addClass('text-success'); thisGlobalTableData.search(inputValue).draw(); // fire in the hole }, 0800); } } }); //----------------------------------------------------------------------- // Check exists //----------------------------------------------------------------------- let $filter01 = $('#modal-input-HUB_CFGNAM'); $filter01.on('keyup', function () { delay(function () { var inputValue = $('#modal-input-HUB_CFGNAM').val(); if ( inputValue != '') { console.log('this will hit, once user has not typed for 1 second ' + inputValue ); checkDataExists(); } }, 0800); }); //----------------------------------------------------------------------- // Event listener for the update button //----------------------------------------------------------------------- $('#updateButton').on('click', function() { // Trigger a redraw of the table thisGlobalTableData.draw(); }); //----------------------------------------------------------------------- // Set short cuts //----------------------------------------------------------------------- // If add d-none class, do not add shortcut if ( GLOBAL_ADD_ALLOWED == 'Y' ) { shortcut.add("Alt+F6",function() { $('#add-button').click(); }); // Show add button $('#add-button').removeClass('d-none'); } // Close window shortcut.add("Shift+Esc",function() { $('#button-close').click(); }); }); // --> </script> </head> <body> <div class="container-fluid mt-2 pl-3 pr-3"> <input type="text" class="d-none" id="input-HUB_CFGGRP"> <input type="text" class="d-none" id="input_search"> <input type="text" class="d-none" id="input-mode"> <input type="text" class="d-none" id="input-current-date"> <input type="text" class="d-none" id="input-current-time"> <input type="text" class="d-none" id="input-show-deleted" > <input type="text" class="d-none" id="input-search-line"> <input type="text" class="d-none" id="input-filter-line"> <input type="text" class="d-none" id="input-rpyOffSet"> <input type="text" class="d-none" id="input-rpyTotalRecordsFound"> <input type="text" class="d-none" id="input-rpyTotalPages"> <input type="text" class="d-none" id="input-rpyPageSize"> <div class="row"> <div class="col-2"> <img src="images/customer-logo.png" alt="Customer Logo"> </div> <div class="col-8 text-center <?php echo $DFT_CLOCK_SIZE ?>"> <i class="font-awesome-pseudo-class fa-thin fa-clock"></i> <span id="current-time"><?php echo date('d-m-Y h:i:s') ?></span> </div> <div class="col-2 text-right"> <div class="btn btn-primary mb-1" onclick="loadPage('menu_admin.php','','','')" title="<?php echo $datahub_go_to_my_dear_home ?>"><i class="font-awesome-pseudo-class fa-2x fa-thin fa-home"></i></div> <div class="d-none"> <div class="btn btn-primary mb-1 d-none d-xl-inline-block" onclick="loadPage('menu_main.php','','','')" title="<?php echo $datahub_go_to_my_dear_home_03 ?>"><i class="font-awesome-pseudo-class fa-2x fa-thin fa-fort"></i></div> <div class="btn btn-danger mb-1 d-none d-lg-inline-block" onclick="signoff()" title="<?php echo $datahub_go_to_my_dear_home_02 ?>"><i class="font-awesome-pseudo-class fa-thin fa-2x fa-right-from-bracket"></i></div> </div> </div> </div> <div class="row"> <div class="col-12 text-center"> <div id="data-hub-company-information"></div> </div> </div> <div class="card mt-2"> <div class="card-header text-muted"> <div class="row mt-2"> <div class="col-4 h4"> <i class="font-awesome-pseudo-class fa-thin fa-gears"></i> <?php echo "$datahub_text0111"; ?> </div> <div class="col text-right font-weight-bold"> <button type="button" class="d-none btn btn-dark" id="button-toggle-show-deleted" title="Alt+F2=Toggle" onclick="showDeleted()"><?php echo $datahub_button_show_also_deleted ?> : <span id="button-show-deleted" class="font-weight-bold"><?php echo $datahub_YES ?></span></button> <div class="row d-none"> <div class="col-10 text-right"> </div> <div class="col text-right"> <?php echo $datahub_text0059 ?> <span id="text-current-page">...</span> <?php echo $datahub_text0060 ?> <span id="text-total-pages">...</span> </div> </div> <div class="row"> <div class="col-10 text-right"> </div> <div class="col text-right"> <?php echo $datahub_text0061 ?> : <span id="text-total-records-found">...</span> </div> </div> <div class="row"> <div class="col-10 text-right"> </div> <div class="col text-right"> <span id="delay-marker-id"></span> </div> </div> </div> </div> </div> <div class="card-body"> <!-- Message if screen is not wide enough --> <div class="container-fluid mt-2 mb-4 d-block d-lg-none"> <div id="general-message-top" class="border border-danger rounded p-2 text-danger font-weight-boldx"><?php echo $datahub_error0040a ?></div> </div> <!-- Message if screen is not wide enough --> <!-- Group lines found --> <div class="d-none d-lg-block"> <div class="row mb-2"> <div class="col-12"> <div id="data-result-button-group"></div> </div> </div> </div> <div class="row mt-2"> <div class="col"> <div id="data-result" style="width: 100%;"></div> <table id="REEFTvisual_data" class="table nowrap table-bordered table-striped table-hover"> <thead> <tr class="bg-primary text-white font-weight-bold text-center"> <th class="text-left"><?php echo $datahub_text0112 ?></th> <th class="text-left"><?php echo $datahub_text0135 ?></th> <th class="text-left"><?php echo $datahub_text0114 ?></th> <th class="text-left"><?php echo $datahub_text0115 ?></th> <th class="text-left"><?php echo $datahub_text0113 ?></th> <th class="text-center"><?php echo $datahub_text0006 ?></th> <th class="text-left"><button type="button" id="add-button" title="Shortcut: Alt+F6" onclick="dataAdd('0')" class="d-none btn btn-dark btn-block font-weight-bold"><?php echo $datahub_button_save_01 ?></button></th> <th class="text-left"></th> <th class="text-left">HUB_CFGDAT</th> <th class="text-left">HUB_CFGTIM</th> <th class="text-left">HUB_ACTIVE</th> <th class="text-left">HUB_CFGTYP</th> </tr> </thead> </table> </div> </div> <div class="row"> <div class="col text-right mb-2"> <small><div id="load-time-from-database"></div></small> </div> </div> </div> </div> </div> <!-- Set footer --> <?php include "include/footer.php"; ?> <!-- Set footer --> <!-- ========================================================================== --> <!-- M O D A L S --> <!-- ========================================================================== --> <!-- Modal --> <div class="modal fade" id="hub_config_maintainModal" tabindex="-1" data-backdrop="static" role="dialog" aria-labelledby="hub_config_maintainModalLabel" aria-hidden="true"> <div class="modal-dialog modal-xxl"> <div class="modal-content"> <div class="modal-header bg-primary text-white"> <div class="container-fluid pl-0 pr-0"> <div class="row"> <div class="col-8"> <h5 class="modal-title" id="hub_config_maintainModalLabel"><i class="font-awesome-pseudo-class fa-thin fa-gears"></i> <?php echo $datahub_text0111 ?></h5> </div> <div class="col text-right"> </div> <div class="col-1 text-right" style="max-width:20px"> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> </div> </div> </div> <div class="modal-body ml-2 mr-2"> <!-- Hidden fields start --> <input type="text" class="d-none" id="input-current-color-picker"> <input type="text" class="d-none" id="input-current-text-color"> <input type="text" class="d-none" id="input-current-background-color"> <!-- Hidden fields end --> <!-- Message if screen is not wide enough --> <div class="container-fluid mt-2 mb-4 d-block d-lg-none"> <div id="general-message-top" class="border border-danger rounded p-2 text-danger font-weight-boldx"><?php echo $datahub_error0040a ?></div> </div> <!-- Message if screen is not wide enough --> <!-- Hidden fields start outside of the <form> --> <input type="text" class="d-none" id="modal-input-counter" name="modal-input-counter"> <!-- Hidden fields end --> <form name="dataForm" id="dataForm"> <!-- Hidden fields start --> <!-- Hidden fields end --> <div class="row mt-2"> <div class="col-3"> <?php echo $datahub_text0112 ?> </div> <div class="col-2"> <input class="form-control form-inline" maxlength="20" type="text" id="modal-input-HUB_CFGNAM" name="modal-input-HUB_CFGNAM" onkeyup="resetModalMessage(),this.value = this.value.toUpperCase(),resetLineModal()"> </div> </div> <div class="row mt-2"> <div class="col-3"> <?php echo $datahub_text0115 ?> </div> <div class="col-8"> <input class="form-control" type="text" id="modal-input-HUB_CFGVAL" name="modal-input-HUB_CFGVAL" onkeyup="resetModalMessage()"> </div> </div> <div class="row mt-2"> <div class="col-3"> <?php echo $datahub_text0114 ?> </div> <div class="col-6"> <input class="form-control" type="text" onkeyup="resetModalMessage()" id="modal-input-HUB_CFGDSC" name="modal-input-HUB_CFGDSC"> </div> </div> <div class="row mt-2"> <div class="col-3"> <?php echo $datahub_text0135 ?> </div> <div class="col-2"> <input class="form-control" type="text" onkeyup="resetModalMessage(),this.value = this.value.toUpperCase()" id="modal-input-HUB_CFGGRP" name="modal-input-HUB_CFGGRP"> </div> <div class="col-6"> <div id="data-result-button-group-modal"></div> </div> </div> <div class="row mt-2"> <div class="col-3"> <?php echo $datahub_text0113 ?> </div> <div class="col-5"> <div id="button-group-config-type"></div> <input class="d-none form-control" type="text" id="modal-input-HUB_CFGTYP" name="modal-input-HUB_CFGTYP" onkeyup="resetModalMessage()"> </div> </div> <div class="row mt-2"> <div class="col-3"> <?php echo $datahub_text0006 ?> </div> <div class="col-6"> <button type="button" class="btn btn-primary" onclick="setHUB_ACTIVEButton('1')" id="button-deleted-yes"><?php echo $datahub_YES ?></button> <button type="button" class="btn btn-primary" onclick="setHUB_ACTIVEButton('0')" id="button-deleted-no"><?php echo $datahub_NO ?></button> <input class="d-none form-control" type="text" onkeyup="resetModalMessage()" id="modal-input-HUB_ACTIVE" name="modal-input-HUB_ACTIVE"> </div> </div> <div class="row mt-2"> <div class="col-3"> <?php echo $datahub_text0134 ?> </div> <div class="col-2"> <input class="form-control read-only-class" type="text" id="modal-input-HUB_CFGDAT" name="modal-input-HUB_CFGDAT" onkeyup="resetModalMessage()"> </div> <div class="col-2"> <input class="form-control read-only-class" type="text" id="modal-input-HUB_CFGTIM" name="modal-input-HUB_CFGTIM" onkeyup="resetModalMessage()"> </div> </div> </form> </div> <div class="modal-footer-pretty modal-footer"> <div class="container-fluid"> <div class="row"> <div class="col-12 text-left"> <div class="p-1 font-weight-bold text-danger border-top border-dark " id="modal-message"> </div> </div> </div> <div class="row mt-1 mb-2"> <div class="col-3 text-left"> <button type="button" id="modal-save-button" class="btn btn-primary btn-block" onclick="dataSave()"><?php echo $datahub_button_save ?></button> </div> <div class="col-6 text-right"> </div> <div class="col-3 text-right"> <button type="button" class="btn btn-primary btn-block" onclick="closeModal()"><?php echo $datahub_button_cancel_01 ?></button> </div> </div> </div> </div> </div> </div> </div> <!-- ************************************************ --> <!-- Confirm delete --> <!-- ************************************************ --> <div class="modal fade" id="hub_config_confirmDeleteModal" tabindex="-1" role="dialog" aria-labelledby="hub_config_confirmDeleteModalLabel" aria-hidden="true"> <div class="modal-dialog modal-xl" role="document"> <div class="modal-content"> <div class="modal-header bg-primary text-white"> <h5 class="modal-title" id="hub_config_confirmDeleteModalLabel"><?php echo $datahub_text0063 ?></h5> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <form name="dataForm-delete" id="dataForm-delete"> <input type="text" class="d-none" id="confirm-delete-HUB_CFGNAM" name="confirm-delete-HUB_CFGNAM"> </form> <div class="h6"><?php echo $datahub_text0062 ?>: <span class="font-weight-bold" id="confirm-delete-text-HUB_CFGNAM"></span></div> </div> <div class="modal-footer"> <div class="container-fluid"> <div class="row mt-1 mb-2"> <div class="col-3 text-left"> <button type="button" onclick="dataDeleteExec()" class="btn btn-primary"><?php echo $datahub_button_delete ?></button> </div> <div class="col-6 text-right"> </div> <div class="col-3 text-right"> <button type="button" class="btn btn-primary" data-dismiss="modal"><?php echo $datahub_button_cancel ?></button> </div> </div> </div> </div> </div> </div> </div> </body> </html>